<HTML>
<BODY>
<PRE>
<!-- Manpage converted by man2html 3.0.1 -->

<B>MKCOLLATE(1)</B>            Libc General Commands Manual           <B>MKCOLLATE(1)</B>


</PRE>
<H2>NAME</H2><PRE>
     <B>mkcollate</B> - convert collation sequence source definition


</PRE>
<H2>SYNOPSIS</H2><PRE>
     <B>mkcollate</B> <I>[-d]</I> <I>[Outputfile]</I> <I>Inputfile</I>


</PRE>
<H2>DESCRIPTION</H2><PRE>
     The <B>mkcollate</B> utility is a Win32 application.  <B>mkcollate</B> converts a col-
     lation sequence source definition into a format usable by the <B>strxfrm</B>()
     and <B>strcoll</B>() functions. It is used to define the many ways in which
     strings can be ordered and collated.  <B>strxfrm</B>() transforms its first ar-
     gument and places the result in its second argument. The transformed
     string is such that it can be correctly ordered with other transformed
     strings by using <B>strcmp</B>(), <B>strncmp</B>(), or <B>memcmp</B>().  <B>strcoll</B>() transforms
     its arguments and does a comparison.

     It reads <I>Inputfile</I> which is a LC_COLLATE source file and produces a
     <I>OutputFile</I> which is a LC_COLLATE binary file suitable for placement in
     /etc/locale/<I>language</I>/LC_COLLATE.

     Options list: </PRE>
<PRE>	<I>-d</I> : used for debugging.  </PRE>
<PRE>	<I>Outputfile</I> : its default value is LC_COLLATE

     The collation sequence definition specifies a set of collating elements
     and the rules defining how strings containing these should be ordered.
     This is most useful for different language definitions.

     The specification file can consist of three statements: <I>charmap</I>,
     <I>substitute</I> and <I>order</I>.

     Of these, only the <I>order</I> statement is required. When <I>charmap</I> or
     <I>substitute</I> is supplied, these statements must be ordered as above. Any
     statements after the order statement are ignored.

     Lines in the specification file beginning with a <I>#</I> are treated as com-
     ments and are ignored. Blank lines are also ignored.

     <I>charmap</I> <I>charmapfile</I>

     <I>charmap</I> defines where a mapping of the character and collating element
     symbols to the actual character encoding can be found.

     The format of <I>charmapfile</I> is shown below. Symbol names are separated from
     their values by TAB or SPACE characters. symbol-value can be specified in
     a hexadecimal (\x<I>??</I>) or octal (\<I>???</I>)  representation, and can be only one
     character in length.

     <I>symbol-name1</I> <I>symbol-value1</I>
     <I>symbol-name2</I> <I>symbol-value2</I>
     <I>...</I>
     The <I>substitute</I> statement substitutes the character <I>char</I> with the string
     <I>repl</I>.

     The <I>substitute</I> statement is optional.


     <I>order</I> <I>order</I><B>_</B><I>list</I>

     <I>order</I><B>_</B><I>list</I> is a list of symbols, separated by semi colons, that defines
     the collating sequence. The special symbol <I>...</I> specifies, in a short-hand
     form, symbols that are sequential in machine code order.

     An order list element can be represented in any one of the following
     ways:

     <B>o</B>   The symbol itself (for example, <I>a</I> for the lower-case letter <I>a</I>)

     <B>o</B>   The symbol chain (for example, <I>abc</I>)

     <B>o</B>   In octal representation (for example, <I>\141</I> for the letter <I>a</I>)

     <B>o</B>   In hexadecimal representation (for example, <I>\x61</I> for the letter <I>a</I>)

     <B>o</B>   The symbol name as defined in the <I>charmap</I> file (for example, <I>&lt;abc&gt;</I>
         for <I>abc</I> <I>\023</I> record in <I>charmapfile</I>). If character map name have <I>&gt;</I>
         character, it must be escaped as <I>/&gt;</I>, single <I>/</I> must be escaped as <I>//</I>.

     <B>o</B>   Symbols <I>\a</I>, <I>\b</I>, <I>\f</I>, <I>\n</I>, <I>\r</I>, <I>\v</I> are permitted in its usual C-language
         meaning

     <B>o</B>   The symbol range (for example, <I>a;...;z</I>)

     <B>o</B>   Comma-separated symbols, ranges and chains enclosed in parenthesis
         (for example <I>(</I> <I>sym1</I>, <I>sym2</I>, <I>...</I> <I>)</I>) are assigned the same primary or-
         dering but different secondary ordering.

     <B>o</B>   Comma-separated symbols, ranges and chains enclosed in curly brackets
         (for example <I>{</I> <I>sym1</I>, <I>sym2</I>, <I>...</I> <I>}</I>) are assigned the same primary or-
         dering only.

     The backslash character <I>\</I> is used for continuation. In this case, no
     characters are permitted after the backslash character.


</PRE>
<H2>EXIT STATUS</H2><PRE>
     <B>mkcollate</B> exits with the following values: </PRE>
<PRE>	<I>0</I> No  errors  were   found and the output was successfully created.  </PRE>
<PRE>	<I>!=0</I> Errors were found.


</PRE>
<H2>FILES</H2><PRE>
     <I>/etc/locale/&lt;language&gt;/LC</I><B>_</B><I>COLLATE</I> standard shared location  for  colla-
     tion  orders under the locale locale


</PRE>
<H2>SEE ALSO</H2><PRE>
</PRE>
<HR>
<ADDRESS>
Man(1) output converted with
<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
</ADDRESS>
</BODY>
</HTML>
